package com.chaoxi.picturebackend.config;

import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.concurrent.TimeUnit;

@Configuration
public class CacheConfig {

    /**
     * 配置本地缓存用户信息
     * @return Cache实例
     */
    @Bean("userLocalCache")
    public Cache<Long, Object> userLocalCache() {
        return Caffeine.newBuilder()
                // 初始容量
                .initialCapacity(100)
                // 最大容量
                .maximumSize(1000)
                // 写入10分钟后过期
                .expireAfterWrite(10, TimeUnit.MINUTES)
                .build();
    }
}